﻿Feature: Management of the predefined product list
	As a creator of a shopping list
	I want to be able to add products to a predefined list of products
	So that I can pick products from this predefined list of products to create my shopping list faster in the future

@mytag @proposal @wip @notag
Scenario Outline: Add a product to the predefined products list 
	Given the predefined products list is empty
	When I add a new "product" to the predefined products list
	Then I have 1 new product on the predefined products list
	And the new "product" appears in the predefined products list

	Examples:
	| product |
	| tomatoes |
	| cheese   |

Scenario Outline: Add several products to the predefined products list 
	Given the predefined products list is empty
	When I add a new "product1" to the predefined products list
	When I add a new "product2" to the predefined products list
	When I add a new "product3" to the predefined products list
	When I add a new "product4" to the predefined products list
	When I add a new "product5" to the predefined products list
	Then I have 5 new products on the predefined products list
	And the "product1", "product2", "product3", "product4", "product5" appear in the predefined products list

	Examples:
	| product1 | product2 | product3 | product4 | product5 |
	| tomatoes | bananas  | salt     | brocoli  | chicken  |
	| cheese   | noodles  | pepper   | beef     | lamb     |
	| pork     | eggs     | café     | knödel   | curaçao  |

Scenario Outline: Add several products to a non-empty predefined products list 
	Given the predefined products list is containing the products "product1" and "product2"
	When I add a new "product3" to the predefined products list
	When I add a new "product4" to the predefined products list
	When I add a new "product5" to the predefined products list
	Then I have 5 products on the predefined products list
	And the "product1", "product2", "product3", "product4", "product5" appear in the predefined products list

	Examples:
	| product1 | product2 | product3 | product4 | product5 |
	| noodles  | bananas  | salt     | brocoli  | chicken  |
	| spätzli  | tomatoes | pepper   | beef     | lamb     |
	| pute     | oeufs    | café     | knödel   | curaçao  |

Scenario Outline: Remove several products from an initial non-empty predefined products list 
	Given the predefined products list is containing the products "product1" and "product2"
	When I add a new "product3" to the predefined products list
	When I add a new "product4" to the predefined products list
	When I add a new "product5" to the predefined products list
	When I remove "product2" from the predefined products list
	When I remove "product4" from the predefined products list
	Then I have 3 products on the predefined products list
	And the "product1", "product3", "product5" remain in the predefined products list

	Examples:
	| product1 | product2 | product3 | product4 | product5 |
	| noodles  | bananas  | salt     | brocoli  | chicken  |
	| spätzli  | tomatoes | pepper   | beef     | lamb     |
	| Pute     | oeufs    | café     | Knödel   | curaçao  |